Skip to content

DPL: add allocator to forward a fair::mq::Message payload by shallow copy#15577

Open
ehellbar wants to merge 2 commits into
AliceO2Group:devfrom
ehellbar:pr15577
Open

DPL: add allocator to forward a fair::mq::Message payload by shallow copy#15577
ehellbar wants to merge 2 commits into
AliceO2Group:devfrom
ehellbar:pr15577

Conversation

@ehellbar

@ehellbar ehellbar commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

[[nodiscard]] DataRefIndices initialIndices() const { return {0, 1}; }
[[nodiscard]] DataRefIndices endIndices() const { return {size_t(-1), size_t(-1)}; }
[[nodiscard]] DataRef getAtIndices(DataRefIndices idx) const { return record->getAtIndices((int)slot, idx); }
[[nodiscard]] fair::mq::Message* getPayloadAtIndices(DataRefIndices idx) const { return record->getPayloadAtIndices((int)slot, idx); }

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't we already have an helper which does that?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see it, at least not for what I am doing here.

I define the getter e.g. in https://github.com/AliceO2Group/AliceO2/pull/15577/changes#diff-5d24f98b5c6098b6ad0a1ab814450dec590c82b86147d85c5a34afa0521171a6R239, where I use the DataRefIndices directly since we anyway calculate them in the InputRecordIterator.

There is https://github.com/AliceO2Group/AliceO2/blob/dev/Framework/Core/include/Framework/DataModelViews.h#L209, but it uses some indices from which the vector indices need to be computed first, so it is more expensive than what I need to do. Or are you referring to something else?

@alibuild

alibuild commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/fullCI_slc9 for b4570d8 at 2026-07-10 15:43:

## sw/BUILD/O2-full-system-test-latest/log
command /sw/slc9_x86-64/O2/slc9_x86-64-slc9_x86-64-local12/prodtests/full-system-test/dpl-workflow.sh had nonzero exit code 1
[8819:internal-dpl-injected-dummy-sink]: [15:43:10][ERROR] Failed binding socket internal-dpl-injected-dummy-sink.metric-feedback[0].push, address: ipc://@metric-feedback-0, reason: Address already in use
[8819:internal-dpl-injected-dummy-sink]: [15:43:10][ERROR] failed to attach channel metric-feedback[0] (bind on ipc://@metric-feedback-0)
[8819:internal-dpl-injected-dummy-sink]: [15:43:10][ERROR] 1 of the binding channels could not initialize. Initial configuration incomplete.
[8819:internal-dpl-injected-dummy-sink]: [15:43:10][FATAL] error while setting up workflow in o2-raw-file-reader-workflow: 1 of the binding channels could not initialize. Initial configuration incomplete.
[ERROR] Workflow crashed - PID 8819 (internal-dpl-injected-dummy-sink) did not exit correctly however it's not clear why. Exit code forced to 128.
[ERROR]  - Device internal-dpl-injected-dummy-sink: pid 8819 (exit 128)
[INFO]    - First error: [15:43:10][FATAL] error while setting up workflow in o2-raw-file-reader-workflow: 1 of the binding channels could not initialize. Initial configuration incomplete.
[ERROR] SEVERE: Device internal-dpl-injected-dummy-sink (8819) had at least one message above severity 7: error while setting up workflow in o2-raw-file-reader-workflow: 1 of the binding channels could not initialize. Initial configuration incomplete.


## sw/BUILD/o2checkcode-latest/log
--
========== List of errors found ==========
++ GRERR=0
++ grep -v clang-diagnostic-error error-log.txt
++ grep ' error:'
++ GRERR=1
++ [[ 1 == 0 ]]
++ mkdir -p /sw/INSTALLROOT/9f038d485064312eacf7727266771115c510c0b1/slc9_x86-64/o2checkcode/1.0-local120/etc/modulefiles
++ alibuild-generate-module
+ HAS_BIN=
+ HAS_LIB=
+ HAS_CMAKE=
+ HAS_ROOT=
+ '[' 0 '!=' 0 ']'
+ cat
+ printf 'if ![ is-loaded '\''BASE/1.0'\'' ] {\n module load BASE/1.0\n}'
+ echo 'BUILD_REQUIRES=CMake alibuild-recipe-tools defaults-release'
BUILD_REQUIRES=CMake alibuild-recipe-tools defaults-release
+ FULL_BUILD_REQUIRES='defaults-release date Python-modules-list json-c ninja Alice-GRID-Utils safe_int MPFR pytorch_cpuinfo FairCMakeModules googlebenchmark ninja-fortran double-conversion bz2 CMake alibuild-recipe-tools UUID O2-customization'
+ echo 'FULL_BUILD_REQUIRES=defaults-release date Python-modules-list json-c ninja Alice-GRID-Utils safe_int MPFR pytorch_cpuinfo FairCMakeModules googlebenchmark ninja-fortran double-conversion bz2 CMake alibuild-recipe-tools UUID O2-customization'
FULL_BUILD_REQUIRES=defaults-release date Python-modules-list json-c ninja Alice-GRID-Utils safe_int MPFR pytorch_cpuinfo FairCMakeModules googlebenchmark ninja-fortran double-conversion bz2 CMake alibuild-recipe-tools UUID O2-customization
++ env
++ cut -f1 -d=
++ grep -v '^DEFAULT_'
++ grep -v PKGREVISION
++ grep -v ALIBUILD_RECIPE_TOOLS
++ grep REVISION
++ sed -e s/_REVISION//
+ for x in $(env | cut -f1 -d= | grep -v "^DEFAULT_" | grep -v PKGREVISION | grep -v ALIBUILD_RECIPE_TOOLS | grep REVISION | sed -e 's/_REVISION//')
++ eval 'echo $LIBFFI_REVISION'
+++ echo 10
+ REVISION_VALUE=10
++ eval 'echo $LIBFFI_VERSION'
+++ echo v3.2.1-alice1
+ VERSION_VALUE=v3.2.1-alice1
++ eval 'echo $LIBFFI_ROOT'
[0 more errors; see full log]

Full log here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants